namespace JGSY.CMS.LowCode.Platform.Application.DTOs.Monitoring;

/// <summary>
/// 错误日志数据传输对象
/// </summary>
public class ErrorLogDto
{
    /// <summary>
    /// 会话ID
    /// </summary>
    public string SessionId { get; set; } = string.Empty;

    /// <summary>
    /// 用户ID
    /// </summary>
    public string? UserId { get; set; }

    /// <summary>
    /// 错误类型
    /// </summary>
    public string ErrorType { get; set; } = string.Empty;

    /// <summary>
    /// 错误消息
    /// </summary>
    public string? ErrorMessage { get; set; }

    /// <summary>
    /// 错误堆栈
    /// </summary>
    public string? ErrorStack { get; set; }

    /// <summary>
    /// 错误文件名
    /// </summary>
    public string? ErrorFilename { get; set; }

    /// <summary>
    /// 错误行号
    /// </summary>
    public int? ErrorLineNumber { get; set; }

    /// <summary>
    /// 错误列号
    /// </summary>
    public int? ErrorColumnNumber { get; set; }

    /// <summary>
    /// 页面URL
    /// </summary>
    public string PageUrl { get; set; } = string.Empty;

    /// <summary>
    /// 用户代理
    /// </summary>
    public string? UserAgent { get; set; }

    /// <summary>
    /// 严重程度
    /// </summary>
    public string Severity { get; set; } = "medium";

    /// <summary>
    /// 时间戳
    /// </summary>
    public long Timestamp { get; set; }
}
